#ifndef PH_API_LAYOUT_H__
#define PH_API_LAYOUT_H__

#include "common.h"
#include <structmember.h>

//=====================================================================
//                Layout type to manipulate geometry 
//=====================================================================
/// Determines type of layout in terms of Photon
typedef enum LayoutType_
{
  eLayoutNone,
  eFill,
  eRow,
  eGrid
} InternalLayoutType;

/// Storing three available types
typedef struct
{
  PyObject_HEAD
  InternalLayoutType internal_type;
  union
  {
    PtFillLayoutInfo_t fill;
  } info;
} Layout;

static void Layout_dealloc (Layout* self);
static PyObject* Layout_new (PyTypeObject* type, PyObject* args);
static int Layout_init (Layout* self, PyObject* args);

#endif // PH_API_LAYOUT_H__

